home *** CD-ROM | disk | FTP | other *** search
/ CD ROM Paradise Collection 4 / CD ROM Paradise Collection 4 1995 Nov.iso / program / 4cmp22o.zip / DOSGO.SCR < prev    next >
Text File  |  1994-08-13  |  3KB  |  1 lines

  1. \ HEADER FOR .COM FILES                          12:54 12/10/91                                                                 COPYRIGHT 1985, 1991 (C) BY THOMAS ALMY.  ALL RIGHTS RESERVED   Permission is granted to registered users of ForthCMP to        sell or distrubute computer programs incorporating the compiled contents of this file.                                                                                                          MS is a trademark of Microsoft Corporation.                                                                                     This file is for standard MS-DOS operation, with or without a     separate stack segment.                                                                                                                                                                                                                                                                                                                                                                       \ HEADER FOR .COM  FILES                         12:54 12/10/91 10  ASM HEX FWD,  ( skip the variables )                        VARIABLE DP       ( start free ram = HERE, set by END command ) VARIABLE S0       ( top of stack )                              VARIABLE R0       ( top of return stack )                       VARIABLE BASE     ( radix )     0A BASE !  ( decimal )          THEN,                                                           SEPSSEG? #IF  AX CS <SEG                                          pssize # AX ADD   AX SS >SEG #THEN                            FIND PSIZE #IF DROP ( PSIZE is constant size of program seg)    PSIZE 0 10. D+ 10 M/MOD NIP                                     DUP 10 * rssize - DUP # SP MOV  ( set param stack )               2- # S0 [] MOV  ( set S0 )                                    DUP 10 * # BP MOV  BP R0 [] MOV  ( set return stack, R0 )       4A # AH MOV  SEPSSEG? #IF pssize + #THEN # BX MOV                21 INT   #THEN   -->                                           \ HEADER FOR .COM  FILES                         12:54 12/10/91 FIND PSIZE #IF DROP #ELSE                                       rssize NEGATE DUP # SP MOV  ( set param stack )                   2- # S0 [] MOV  ( set S0 )                                    0 # BP MOV  BP R0 [] MOV  ( set return stack, R0 )              #THEN                                                           0 0 IN/OUT NEED MAIN CLD CALL' MAIN   ( call main program )     CODE bye 4C00 # AX MOV 21 INT END-CODE                          FORTH  0A = #IF DECIMAL #THEN